#!/usr/bin/env python
# -*- coding: utf-8 -*-
# author: tangzhichao

from abc import ABC, abstractmethod
from typing import List


class BaseSlicer(ABC):
    """切片策略抽象基类"""

    @abstractmethod
    def split(self, text: str) -> List[str]:
        """执行文本切片"""
        pass

    @property
    @abstractmethod
    def strategy_name(self) -> str:
        """返回策略名称"""
        pass